1. Field
Embodiments of the invention relate to managing communication between multiple server nodes contained within a clustered environment.
2. Background
A clustered system may include a collection of servers and other components that are arranged to cooperatively perform computer-implemented tasks, such as providing client computers with access to a set of services and resources. The clustered system may be used in an enterprise software environment to handle a number of tasks in parallel. Typically, load balancing algorithm is implemented within the cluster to distribute incoming requests from the client computers evenly among multiple server nodes. In some cases, a single server node in the cluster may handle requests from a client computer. In other cases, the requests received from a client computer are handled by more than one server node cooperating with one another to perform the requested tasks.
One aspect of a clustered system is scalability. The system has the flexibility to enable adding cluster elements to the clustered system. In some cases, it may be desirable to incorporate new cluster elements that use recently developed hardware and/or software technologies. In such cases, a problem may arise if the communication protocol used by preexisting cluster elements (e.g., preexisting servers) is different from the communication protocol used by the recently added cluster elements. For example, if preexisting servers within a clustered system cannot effectively communicate with recently added servers, the preexisting and recently added servers may not be capable of cooperatively handling requests received from client computers.